package com.azt.enums;

import java.util.ArrayList;
import java.util.List;

/**
 * 成长值规则统一管理
 * Created by LiQZ on 2017/4/20.
 */
public class LevelRuleCode {

    enum PURCHASE {

        // 企业通过实名认证
        ENTERPRISE_REAL_NAME_CERTIFICATION("xx");
        // 发布询价，通过审核
        // 在线支付
        // 上传线下支付并通过审核
        // 上传合同并通过审核
        // 使用委托服务
        // 成为平台合伙人
        // 成为城市合伙人
        // 成为金牌服务商
        // 成为银牌采购商
        // 被供应商好评
        // 上传资质、通过审核
        // 被供应商差评

        private String code;

        PURCHASE(String code) {
            this.code = code;
        }

        public String getCode() {
            return code;
        }
    }

    enum PROVIDER {
        ;
        // 企业通过实名认证
        // 发布商品通过审核
        // 商城商品被下单，且完成支付
        // 对询价进行报价
        // 报价被采纳下单
        // 被采购商好评
        // 成为采集供应商
        // 上传资质，通过审核
        // 被采购商差评

        private String code;

        PROVIDER(String code) {
            this.code = code;
        }

        public String getCode() {
            return code;
        }

    }

    public static List<String> getCodes(int type) {
        List<String> codes = new ArrayList<>();
        if (type == LevelTypeEnum.PURCHASE.getIndex()) {
            PURCHASE[] purchases = PURCHASE.values();
            for (PURCHASE purchase: purchases) {
                codes.add(purchase.getCode());
            }
        } else {
            PROVIDER[] providers = PROVIDER.values();
            for (PROVIDER provider: providers) {
                codes.add(provider.getCode());
            }
        }
        return codes;

    }

}
